The field of the disclosure relates generally to mission systems in networked environments (distributed mission systems), and more specifically, to quality of service (QoS) management in such systems.
A distributed mission system is a computing and communication system that supports critical missions on a distributed system including a plurality of computing nodes (e.g., a few to hundreds or even thousands of nodes). Certain distributed mission systems are called networked mission critical systems (NMCSs), as they have stringent requirements in performance, reliability, availability, scalability, security, and maintainability. Examples of NMCSs include finance (e.g., banking) systems, enterprise production support systems, flight management systems, space exploration systems, battle command mission systems, combat systems, power grid management systems, disaster response systems, and/or humanitarian relief systems.
A mission includes actions (also referred to herein as “tasks”) which may be assigned to people and/or autonomous agents, with functional and temporal associations between these actions. In an NMCS, mission actions are allocated and executed on distributed computing and communication nodes. In a manned mission, people work on the actions in a collaborative fashion to accomplish the mission. In an unmanned mission, actions are allocated to distributed systems and executed autonomously in a collaborative fashion to accomplish a mission. A mixture of manned and unmanned systems would have both people working on actions and systems executing actions autonomously.
At least some known network systems, including NMCSs, use QoS policies to achieve a desired level of performance, such as a minimum bandwidth or a maximum latency. In a policy-based approach, strategies and decisions for admission control, resource management, monitoring and adaptation are encoded in policies. Policies specify what decisions should be taken under what conditions. Runtime services load and utilize the policies to make QoS management decisions. Decisions may include admission criteria, task priority, information flow weight, bandwidth allocation, information flow to queue mapping, queue size, etc. Decisions may also include adaptations as changes to admission criteria, priority setting, and weight assignment, etc. In this approach, policies can be changed over time without software code changes in runtime services, enabling a flexible and easy-to-maintain QoS management solution.
However, one shortcoming of a conventional policy-based approach is that the policies are created and updated manually by human experts rather than being automatically derived from mission requirements. This introduces manual effort as well as a potential for delay and human error. It is also difficult to update and respond to changes in the missions it supports. Further, such an approach does not scale well to large scale complex distributed mission systems. Over time, it becomes more and more challenging to understand the rationale and optimality of such policies, such as who defined them, on what the policy definitions are based, and why the policies are advantageous to the mission. Accordingly, it would be advantageous to provide methods and systems that derive formal mission models and automatically generate QoS management policies for missions based on the formal models.